const { getCarousel, getPetTalentList, getRecommendList, searchList } = require("../model/homeModel")
module.exports = {
  // 获取轮播图数据
  getCarousel: async (ctx) => {
    // 限制默认为3
    let limit = 3;
    // 如果传了limit参数就重新赋值
    if (ctx.request.query.limit) {
      limit = parseInt(ctx.request.query.limit)
    }
    // 获取轮播图数据
    let res = await getCarousel(limit);
    // 如果为空数据则没有数据
    if (res.length === 0) {
      ctx.body = {
        status: 404,
        msg: "没有数据"
      }
      return;
    }
    ctx.body = {
      status: 200,
      msg: "获取成功",
      data: res
    }
  },
  // 获取养宠达人列表
  getPetTalentList: async (ctx) => {
    // 限制默认为2
    let limit = 2;
    // 如果传了limit参数就重新赋值
    if (ctx.request.query.limit) {
      if (ctx.request.query.limit == "all") {
        limit = ctx.request.query.limit;
      } else {
        limit = parseInt(ctx.request.query.limit)
      }
    }
    // 获取养宠达人列表
    let res = await getPetTalentList(limit);
    // 如果为空数据则没有数据
    if (res.length === 0) {
      ctx.body = {
        status: 404,
        msg: "没有数据"
      }
      return;
    }
    ctx.body = {
      status: 200,
      msg: "获取成功",
      data: res
    }
  },
  // 获取人气推荐列表
  getRecommendList: async (ctx) => {
    // 限制默认为2
    let limit = 2;
    // 如果传了limit参数就重新赋值
    if (ctx.request.query.limit) {
      if (ctx.request.query.limit == "all") {
        limit = ctx.request.query.limit;
      } else {
        limit = parseInt(ctx.request.query.limit)
      }
    }
    // 获取养宠达人列表
    let res = await getRecommendList(limit);
    // 如果为空数据则没有数据
    if (res.length === 0) {
      ctx.body = {
        status: 404,
        msg: "没有数据"
      }
      return;
    }
    ctx.body = {
      status: 200,
      msg: "获取成功",
      data: res
    }
  },
  // 根据品种搜索宠物列表
  searchList: async (ctx) => {
    const { pet_variety } = ctx.request.query;
    let res = await searchList(pet_variety);

    if (res.length !== 0) {
      ctx.body = {
        status: 200,
        msg: "查询成功",
        data: res
      }
    } else {
      ctx.body = {
        status: 205,
        msg: "未找到",
        data: []
      }
    }
  }
}